采用vCenter+ESXi主机集群的部署方式可统一管理中小型数据中心,虚拟化使用vCenter最新的Linux版本,非网上大多数提及的Windows server版本,也即VCSA6.7,构建过程出现一些棘手问题,在全网都未找到相关问题的分析,在本文中得以解决,为此将解决方案以文章形式发布。
1、VCSA6.7安装失败提示
VCSA6.7安装多次,卡在第二阶段52%或者60%后就无法安装,多次部署都出现该出错提示。
在error的日志文件夹内,你会看到action.log、error.log、errors-ignored.log这三个文本(当然部署过程产生的还有其他多个文件)。其中在error.log文件里仅有一句:No file found matching /etc/vmware-vpx/vc-extn-cisreg.prop。很好,这些提示,都不可能给你明显的设置方向,你只能去检索+深度分析,在网上竟然检索不到该解决方案,以下为相关检索结果:
这里有人提出同样的出错,但没有详细的解决方案:参考链接
https://bbs.51cto.com/thread-1569772-1-1.html
有人提出是VCSA版本低,说部署新的可成功安装,参考链接,这不是解决方案:
https://bbs.51cto.com/thread-1564358-1-1.html
这个链接是卡在安装过程,依然没人提过详细的解决方案:
https://bbs.csdn.net/topics/392349298
去Stack Overflow检索相关出错关键字,也无特别干货。
在VMware troubleshoot 官方论坛,也没找到明显的提示,它有提示说到网络连接正常、DNS具备Vcenter域名的解析记录等,很含糊的提示。
而VCSA6.7部署成功的文章,却没进一步探讨,哪个环节是影响部署关键部分。
2、出现以上部署出错对应的配置过程(还原部署流程):
2.1准备ESXI6.7环境
首先需在一台物理机上安装好ESXI6.7环境,参考镜像:VMware-ESXi-6.7.0-8169922-LNV-20180404.iso ,参考安装方法:使用UltraISO将该镜像制作U盘启动器,注意,这里若用大白菜等工具,会出现无法在物理机安装ESXI环境
2.2 准备VCSA6.7镜像
首先使用虚拟光驱将VMware-VCSA-all-6.7.0-8217866.iso 镜像文件加载后在H:\vcsa-ui-installer\win32上,有exe界面安装器:
若不理解VCSA的概念,有人以为是这样的思路:该部署电脑是windows,那么在这里打开VCSA镜像的安装器,岂不是要安装在windows系统上?
实际情况:打开安装器后,会提示选择一台外部ESXI主机用来安装VSCA6.7(要求输入远程ESXI的IP账号密码),这个过程安装器会在选中的ESXI先创建一个linux环境(phonton os)的虚拟机,然后再把真正的VCSA6.7的OVA包注入到该虚拟机上进行安装。
2.3 开始部署安装
在配置网络这里,前几次部署失败都按这种网络配置
配置的大致逻辑:
FQDN:留空
IP地址:192.168.10.10
掩码:255.255.255.0
网关:192.168.10.1
DNS:20.101.191.1
ok,第一阶段都会正确安装,不会出现出错。
此时,登录部署vcenter的远程ESXi web 界面,发现该ESXi主机已经创建并运行一个venter的虚拟机,其shell提示可进入https://photon-machine:5480
进一步配置VCSA
这里的域名值得质疑,
“photon-machine”哪里设置的?
https://photon-machine:5480
,本地电脑DNS服务器肯定没有这条解析记录,部署电脑如何能打开该域名url?**
如果必须让本地电脑可访问该域名url,那么本地电脑必须设置一个含有photon-machine<>192.168.10.10记录的DNS IP?
如果https://photon-machine:5480
可改为https://192.168.10.10:5480
,那么本地电脑无需设置DNS,即可访问,在哪里改?**
2.4 带上以上疑问开始第二阶段安装
这里的single sign-on域名用了默认域名,也可以改成自己任意取定的域名(此设置不会引起第二阶段部署出错)
这里的IP地址DNS与2.3所填写的一致,到了这一步要注意了,这里的主机名称(指vcenter名称):photo-machine,原来这是在第二阶段设完所有参数后,安装程序使用的默认的英文主机名称作为vcenter的主机名称,这样的配置设好后,开始第二阶段安装,不出意外,卡在60%后报错,安装失败。
如果你思维敏捷,你会去Vcenter shell看下什么情况,并输入https://192.168.10.10
看看能有什么反馈?结果如下所示:
用这两者里面的相关关键字去检索solution,然而似乎没什么收获。对于那些刚接触VCSA6.7且想使用其为搭建数据中心的工程师(这里指全栈工程师),2.1-2.4的配置过程几乎就是他们的配置过程,遇到这种bug应该很崩溃,因为所有的ESXi集群都搭建起来,就差Vcenter服务搭不起来,多台ESXI如何管理?如何构建高可用的数据中心?
3、正确部署VCSA6.7的过程
经过本人深度测试,目前两种部署方式可完整正确部署。
第一种:采用上面展示的UI安装方法,使用installer部署第一阶段>>进入VCenter shell设置>>登录Web界面进行第二阶段部署
第二种:采用将VCSA6.7的OVA文件导入到远程ESXi主机,使用ESXi导入ova创建>>进入VCenter shell设置>>登录Web界面进行第二阶段部署(理解了第一种方式后,第二种部署方式无需在此给出指引,可自行探索,ova文件一般位于iso文件夹里的vcsa目录下)
第一种方式
3.1 第一阶段的installer,在此界面的设置参数中:
这里的FQDN可以留空,若要填入内容:建议务必填入V center的IP地址
这个案例中vcenter的IP地址:192.168.10.10,因为很多时候,内网并有没搭建专门的DNS服务器,直接填写为Vcenter的IP,客户机无需经过DNS解析即可访问
假设这里的FQDN填写的是域名:wow.mydatacenter,那么在第二阶段VCSA安装多个服务将采用域名去解析,若无法从所给的DNS解析出Vcenter的IP地址,导致相关服务继续安装出现错误。除非你设置的DNS服务器里,包含该域名和IP的映射记录。
所以:当FQDN填写vcenter为IP地址时,那么下方设置的DNS只需设为一个本网络段的可ping网关IP即可,因为vcenter第二阶段的服务安装直接通过IP查找,无需解析。
这里的DNS设为网关的IP:192.168.10.1
3.2 进入VCenter shell设置
在3.1第一阶段完成后,退出installer(后面可通过web后台继续第二阶段部署),进入VCenter shell设置,在DNS里面,Hostname的值为photon-machine,这就是2.3节和2.4节内容提到https://photon-machine:5480
等疑问的解决入口。
故将Hostname设为Vcenter的IP地址,shell restart 网络服务后,可看到其提示已经不再是域名的url,这意味着,
https://192.168.10.10:5480
已经无需DNS解析即可访问,那么可以预测,在第二阶段部署中,某些服务的启动过程不再通过给定的DNS服务器去解析主机名称:photon-machine
3.3 登录web后台进行第二阶段部署:https://192.168.10.10:443
web的部署UI跟本地客户端UI一样,这里的网络配置,主机名称不再是photon-machine,而是vcenter的IP地址
ok,如果你的第二阶段安装最终配置如上,那么恭喜部署成功!
3.4 进入vCenter进程服务管理后台
https://192.168.10.10:5480
又是啥管理后台?注意,该后台不是用于创建虚拟机和管理虚拟机的VCenter后台,是用于管理有关vCenter进程服务相关的后台。
基本是有关VCSA多个服务进程管理后台,以及一些基本配置,在这里我们再次可看到主机名为IP地址,在服务进程列表,可尝试停止VMware vCenter Server 进程,你会发现shell里面的Firstboot Error,访问https://192.168.10.10:443
,出现熟悉的503
综上:
(1)如果你对DNS服务不知如何配置vCenter主机名正向和反向查询,请直接将vCenter hostname改为IP
(2)局域网DNS配置好相关域名记录后,也必须清楚hostname的默认值为photon-machine,需改为你自行设计的vCenter域名。
4、VCSA6.7 web管理正确授权使用
如果两个产品的许可证不匹配,那么vcenter web面板会提示“ESXI主机的许可证与vcenter不匹配,将断开连接”,相当于无法添加ESXi主机
解决方案:
(1)Vcenter的许可证必须是:VMware vCenter Server 6 Standard
(2)ESXI6.7主机的许可证必须是:VMware vSphere 6 Enterprise Plus